package com.soul.doc.bean.po;

import com.baomidou.mybatisplus.annotation.*;
import com.soul.common.bean.comm.BasePo;
import java.io.Serializable;
import java.math.BigDecimal;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 *
 * </p>
 * @author sws
 * @since 2023-11-19 11:08:12
 */
@Data
@Accessors(chain = true)
@TableName("soul_music")
@ApiModel(value = "MusicPo对象", description = "")
public class MusicPo extends BasePo {

    private static final long serialVersionUID = 1L;

    /**
     * 歌名
     */
    @ApiModelProperty("歌名")
    @TableField("music_name")
    private String musicName;

    /**
     * 歌曲文件Id
     */
    @ApiModelProperty("歌曲文件Id")
    @TableField("music_file_id")
    private Long musicFileId;

    /**
     * 歌曲路径
     */
    @ApiModelProperty("歌曲路径")
    @TableField("music_path")
    private String musicPath;

    /**
     * 歌手id
     */
    @ApiModelProperty("歌手id")
    @TableField("singer_id")
    private Long singerId;

    /**
     * 简介
     */
    @ApiModelProperty("简介")
    @TableField("intro")
    private String intro;

    /**
     * 图片文件Id
     */
    @ApiModelProperty("图片文件Id")
    @TableField("pic_file_id")
    private Long picFileId;

    /**
     * 歌曲类型、收费/vip/普通用户
     */
    @ApiModelProperty("歌曲类型、收费/vip/普通用户")
    @TableField("type")
    private String type;

    /**
     * 图片路径
     */
    @ApiModelProperty("图片路径")
    @TableField("picture")
    private String picture;

    /**
     * 播放量
     */
    @ApiModelProperty("播放量")
    @TableField("play_num")
    private Long playNum;

    /**
     * 收藏量
     */
    @ApiModelProperty("收藏量")
    @TableField("collect_num")
    private Long collectNum;

    /**
     * 状态、上线/下架状态，不删除数据
     */
    @ApiModelProperty("状态、上线/下架状态，不删除数据")
    @TableField("status")
    private Integer status;

    /**
     * 专辑id
     */
    @ApiModelProperty("专辑id")
    @TableField("album_id")
    private Long albumId;

    /**
     * 时长
     */
    @ApiModelProperty("时长")
    @TableField("music_length")
    private Integer musicLength;

    /**
     * 价钱
     */
    @ApiModelProperty("价钱")
    @TableField("price")
    private BigDecimal price;

    /**
     * 是否删除 0否 1是
     */
    @TableField("is_del")
    @TableLogic
    protected Byte isDel;
}